home *** CD-ROM | disk | FTP | other *** search
GW-BASIC | 1986-12-16 | 11.5 KB | 331 lines |
- 10 REM Documentation for the Genealogy ON DISPLAY Programs
- 20 REM All data is in the form of DATA statements.
- 30 REM By: Melvin O. Duke. Updated August 1985.
- 40 DATA Genealogy
- 50 DATA User's Manual
- 60 DATA -5
- 70 DATA 1
- 80 INDENT = 0
- 90 DASHES$ = "+"+STRING$(54,45)+"+"
- 100 TRIM.LINE$ = "(Trim-line)"
- 110 REM Program begins here
- 120 READ TITLE$, DOC.NAME$, PAGE.NO, LINE.NO
- 130 IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
- 140 GOSUB 500 'For trim line and heading space
- 150 FOR I = 1 TO 6 : LPRINT : NEXT I
- 160 LPRINT CHR$(14); 'Set Expanded Print
- 170 LPRINT TAB(TAB.POS-2);TITLE$
- 180 LPRINT CHR$(18); 'Return to normal
- 190 FOR I = 1 TO 3 : LPRINT : NEXT I
- 200 LPRINT CHR$(27); "E"; 'Set Emphasized mode
- 210 LPRINT TAB(TAB.POS+12);"ON DISPLAY"
- 220 LPRINT CHR$(27); "F"; 'Return to normal
- 222 LPRINT : LPRINT : LPRINT
- 224 LPRINT TAB(TAB.POS+11);"Version 3.1"
- 230 FOR I = 1 TO 11 : LPRINT : NEXT I
- 240 LPRINT TAB(TAB.POS+10); DOC.NAME$
- 250 LINE.NO = LINE.NO + 27
- 260 '
- 270 READ REPLY$
- 280 IF LEFT$(REPLY$,1) = "." THEN GOSUB 850: GOTO 270
- 290 IF LINE.NO > 44 THEN GOSUB 610
- 300 REM Print the line if not a command
- 303 REM First, change tildes to quotes
- 304 FOR Q = 1 TO LEN(REPLY$)
- 305 IF MID$(REPLY$,Q,1)="~"THEN MID$(REPLY$,Q,1)=CHR$(34)
- 306 NEXT Q
- 310 LPRINT TAB(TAB.POS);REPLY$
- 320 LINE.NO = LINE.NO + 1
- 330 IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
- 340 GOTO 270
- 350 REM Data for the Copyright Page
- 354 DATA ".pa"
- 358 DATA "Anyone may request a copy of these"
- 362 DATA "programs by sending a blank, double-"
- 366 DATA "sided, double-density diskette to the"
- 370 DATA "author of the programs."
- 378 DATA ".sp"
- 382 DATA "An addressed, postage-paid return"
- 386 DATA "mailer must accompany the diskette (no"
- 390 DATA "exceptions, please).
- 394 DATA ".sp"
- 398 DATA "A copy of the programs with documenta-"
- 402 DATA "tion will be sent by return mail."
- 410 DATA ".vt 2"
- 415 DATA "Users are encouraged to copy and share"
- 420 DATA "the programs with others."
- 430 DATA ".vt 6"
- 434 DATA "If you are using these programs, and"
- 438 DATA "finding them of value, your contribution"
- 442 DATA "($35 suggested) will be anticipated."
- 446 DATA ".sp"
- 450 DATA "Melvin O. Duke"
- 454 DATA "P. O. Box 20836"
- 458 DATA "San Jose, CA 95160"
- 462 DATA ".vt 4"
- 466 DATA "Copyright (c) 1983, 1984, 1985, by:"
- 470 DATA "Melvin O. Duke."
- 474 DATA ".sp"
- 478 DATA "All rights reserved."
- 482 '
- 500 REM Top of each page routine
- 510 IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
- 520 LPRINT
- 530 LPRINT TAB(30); TRIM.LINE$
- 540 LPRINT DASHES$ 'Dashes
- 550 FOR I = 1 TO 6
- 560 LPRINT
- 570 NEXT I
- 580 LINE.NO = LINE.NO + 6
- 590 RETURN
- 600 '
- 610 REM Bottom of each page Routine
- 620 IF PAGE.NO < 1 THEN LPRINT : LPRINT : LPRINT : GOTO 740
- 630 LPRINT TAB(TAB.POS); STRING$(40,45) 'on line 46
- 640 LPRINT TAB(TAB.POS+3); TITLE$+" ON DISPLAY. Version 3.1" 'on line 47
- 650 IF PAGE.NO MOD 2 = 1 THEN 690
- 660 LPRINT TAB(TAB.POS);"Page";PAGE.NO;
- 670 LPRINT TAB(TAB.POS+27);"User's Manual"
- 680 GOTO 740
- 690 LPRINT TAB(TAB.POS); "User's Manual";
- 700 IF PAGE.NO < 10 THEN DELTA = 34
- 710 IF PAGE.NO > 9 THEN DELTA = 33
- 720 IF PAGE.NO > 99 THEN DELTA = 32
- 730 LPRINT TAB(TAB.POS+DELTA); "Page"; PAGE.NO 'on line 48
- 740 LPRINT : LPRINT : LPRINT
- 750 LPRINT DASHES$ 'dashes after 51
- 760 LPRINT TAB(30); TRIM.LINE$
- 770 LPRINT CHR$(12);
- 780 PAGE.NO = PAGE.NO + 1
- 790 LINE.NO = 1
- 800 IF REPLY$ = ".eof" THEN 820 'Bypass after last page
- 810 GOSUB 500 'For top of next page
- 820 IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
- 830 RETURN
- 840 '
- 850 REM Command Processor
- 860 IF LEFT$(REPLY$,3) = ".h1" THEN 960
- 870 IF LEFT$(REPLY$,3) = ".h2" THEN 1100
- 880 IF LEFT$(REPLY$,3) = ".h3" THEN 1210
- 890 IF LEFT$(REPLY$,3) = ".sp" THEN 1320
- 900 IF LEFT$(REPLY$,4) = ".eof" THEN 1370
- 910 IF LEFT$(REPLY$,3) = ".pa" THEN 1410
- 920 IF LEFT$(REPLY$,3) = ".vt" THEN 1480
- 930 IF LEFT$(REPLY$,3) = ".pk" THEN 1590
- 940 IF LEFT$(REPLY$,3) = ".in" THEN 1720
- 950 STOP
- 960 REM Head 1 Processor
- 970 FOR I = LINE.NO TO 44
- 980 LPRINT
- 990 NEXT I
- 1000 GOSUB 610 'Bottom of page Routine
- 1010 IF PAGE.NO MOD 2 = 0 THEN GOSUB 1410 'For h1 on Odd pages
- 1020 LPRINT CHR$(14); 'Set expanded print
- 1030 IF PAGE.NO MOD 2 = 0 THEN ADJUST = -4 ELSE ADJUST = -7
- 1040 LPRINT TAB(TAB.POS+ADJUST); RIGHT$(REPLY$,LEN(REPLY$)-4)
- 1050 LPRINT CHR$(18); 'Return to normal
- 1060 LINE.NO = LINE.NO+1
- 1070 IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
- 1080 RETURN
- 1090 '
- 1100 REM Head 2 Processor
- 1110 IF LINE.NO = 7 THEN 1130 'skip spacing if at top of page
- 1120 IF LINE.NO > 43 THEN GOSUB 1410 ELSE LPRINT:LPRINT:LINE.NO = LINE.NO+2
- 1130 LPRINT CHR$(27); "E"; 'Set emphasized print
- 1140 LPRINT TAB(TAB.POS); RIGHT$(REPLY$,LEN(REPLY$)-4)
- 1150 LPRINT CHR$(27); "F"; 'Return to normal
- 1160 LPRINT
- 1170 LINE.NO = LINE.NO + 2
- 1180 IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
- 1190 RETURN
- 1200 '
- 1210 REM Head 3 Processor
- 1220 IF LINE.NO = 7 THEN 1240 'skip spacing if at top of page
- 1230 IF LINE.NO > 43 THEN GOSUB 1410 ELSE LPRINT:LPRINT:LINE.NO = LINE.NO+2
- 1240 LPRINT CHR$(27); "E"; 'Set emphasized print
- 1250 LPRINT TAB(TAB.POS); RIGHT$(REPLY$,LEN(REPLY$)-4)
- 1260 LPRINT CHR$(27); "F"; 'Return to normal
- 1270 LPRINT
- 1280 LINE.NO = LINE.NO + 2
- 1290 IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
- 1300 RETURN
- 1310 '
- 1320 REM Single Space Processor
- 1330 IF LINE.NO = 7 THEN 1350
- 1340 IF LINE.NO > 44 THEN GOSUB 1410 ELSE LPRINT : LINE.NO = LINE.NO + 1
- 1350 IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
- 1360 RETURN
- 1370 REM End of File Processor
- 1380 GOSUB 1410 'Bottom of Page
- 1390 LPRINT CHR$(12);
- 1400 GOTO 3340
- 1410 REM Page Eject Processor
- 1420 FOR I = LINE.NO TO 44
- 1430 LPRINT
- 1440 LINE.NO = LINE.NO + 1
- 1450 NEXT I
- 1460 GOSUB 610 'Bottom of Page Processing
- 1470 RETURN
- 1480 REM Vertical Tab Processor
- 1490 IF LINE.NO = 7 THEN 1580
- 1500 IF LINE.NO > 44 THEN GOSUB 610 'End of page
- 1510 QTY = VAL(RIGHT$(REPLY$,LEN(REPLY$)-3))
- 1520 FOR I = 1 TO QTY
- 1530 LPRINT
- 1540 LINE.NO = LINE.NO + 1
- 1550 IF LINE.NO > 44 THEN I = QTY
- 1560 NEXT I
- 1570 IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
- 1580 RETURN
- 1590 REM Pack Processor
- 1600 IF LINE.NO > 44 THEN GOSUB 610
- 1610 IF TAB.POS = 8 THEN ADJUST = 4
- 1620 IF TAB.POS = 13 THEN ADJUST = 7
- 1630 TAB.POS = TAB.POS + ADJUST + INDENT
- 1640 LPRINT CHR$(15); 'Packed printing
- 1650 WIDTH "lpt1:", 132 'set condensed width
- 1660 LPRINT TAB(TAB.POS); RIGHT$(REPLY$,LEN(REPLY$)-3)
- 1670 LPRINT CHR$(18); 'Return to normal
- 1680 WIDTH "lpt1:", 80 'return to normal
- 1690 LINE.NO = LINE.NO + 1
- 1700 IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
- 1710 RETURN
- 1720 REM Indent Processor
- 1730 INDENT = VAL(RIGHT$(REPLY$,LEN(REPLY$)-3))
- 1740 RETURN
- 2000 DATA ".h1 TABLE OF CONTENTS"
- 2010 DATA ".sp"
- 2020 DATA "INTRODUCTION - - - - - - - - - - - - 1"
- 2030 DATA " OVERVIEW - - - - - - - - - - - - - 1"
- 2040 DATA " CAPABILITIES - - - - - - - - - - - 1"
- 2050 DATA " Display the Genealogy - - - - - 2"
- 2060 DATA " Print Pedigree Charts (Family "
- 2070 DATA " Trees) - - - - - - - - - - - - 2"
- 2080 DATA " Print Family Group Sheets - - - 3"
- 2090 DATA " Produce Descendents Charts - - - 3"
- 2100 DATA " Create the Data Files - - - - - 3"
- 2110 DATA " Update the Data Files - - - - - 4"
- 2120 DATA " Create the Indices - - - - - - - 4"
- 2130 DATA " List the Records in the File - - 4"
- 2140 DATA " Printing the Contents of the"
- 2150 DATA " files - - - - - - - - - - - - 5"
- 2160 DATA " Alphabetical Lists - - - - - - - 5"
- 2170 DATA " Parent/Child Index List - - - - 5"
- 2180 DATA " BENEFITS/ADVANTAGES - - - - - - - 6"
- 2190 DATA " RESULTS - - - - - - - - - - - - - 6"
- 2200 DATA " REQUIREMENTS - - - - - - - - - - - 7"
- 2210 DATA " Hardware Requirements - - - - - 7"
- 2220 DATA " Software Requirements - - - - - 8"
- 2230 DATA ".sp"
- 2240 DATA "GENERAL INFORMATION - - - - - - - - 9"
- 2250 DATA " DESCRIPTION OF FUNCTIONS - - - - - 9"
- 2260 DATA " File Creation - - - - - - - - - 9"
- 2270 DATA " File Maintenance - - - - - - - - 9"
- 2280 DATA " File Indexes - - - - - - - - - - 9"
- 2290 DATA " Summary Lists - - - - - - - - - 10"
- 2300 DATA " Detailed Data - - - - - - - - - 10"
- 2310 DATA " Displaying the Genealogy - - - - 10"
- 2320 DATA " Printing Pedigree Charts - - - - 11"
- 2330 DATA " Printing Family Group Sheets - - 11"
- 2340 DATA " Producing Descendents Charts - - 11"
- 2350 DATA ".pa"
- 2360 DATA " DEFINITION OF TERMS - - - - - - - 12"
- 2370 DATA " Personal Information - - - - - - 12"
- 2380 DATA " Pedigree Information - - - - - - 12"
- 2390 DATA " Family Group Information - - - - 12"
- 2400 DATA " Descendents Information - - - - 13"
- 2410 DATA " Ordinance Information - - - - - 13"
- 2420 DATA " EXPLANATION OF GENERAL CONCEPTS - 14"
- 2430 DATA " Persfile - - - - - - - - - - - - 15"
- 2440 DATA " Marrfile - - - - - - - - - - - - 16"
- 2450 DATA " Pcindex - - - - - - - - - - - - 17"
- 2460 DATA " Mindex - - - - - - - - - - - - - 17"
- 2470 DATA " Ordfile - - - - - - - - - - - - 18"
- 2480 DATA " Relationships - - - - - - - - - 19"
- 2490 DATA " BEFORE YOU START - - - - - - - - - 20"
- 2500 DATA " List of Persons - - - - - - - - 20"
- 2510 DATA " List of Marriages - - - - - - - 22"
- 2520 DATA ".sp"
- 2530 DATA "USING THE PROGRAMS - - - - - - - - - 23"
- 2540 DATA " GETTING STARTED - - - - - - - - - 23"
- 2550 DATA " FIRST TIME USAGE - - - - - - - - - 25"
- 2560 DATA " Backing up the Distribution "
- 2570 DATA " Diskette - - - - - - - - - - - 25"
- 2580 DATA " Preparing a new Data Diskette - 25"
- 2590 DATA " Copying the Menu Program - - - - 26"
- 2600 DATA " Copying the Testdata Data File - 27"
- 2610 DATA " Creating the Data Files - - - - 28"
- 2620 DATA " Caution - - - - - - - - - - - - 29"
- 2630 DATA " HOW TO OPERATE - - - - - - - - - - 30"
- 2640 DATA " Selecting an individual program 30"
- 2650 DATA " Operating the updatper program - 31"
- 2660 DATA " Operating the updatmar program - 33"
- 2670 DATA " Operating the updatord program - 35"
- 2680 DATA " Operating the indexpc program - 36"
- 2690 DATA " Operating the indexmar program - 37"
- 2700 DATA " Operating the display program - 38"
- 2710 DATA " Operating the pedigree program - 41"
- 2720 DATA " Operating the family program - - 42"
- 2730 DATA " Operating the descend program - 42"
- 2740 DATA " Operating the other programs - - 43"
- 2750 DATA ".sp"
- 2760 DATA " HOW TO STOP - - - - - - - - - - - 44"
- 2770 DATA " Stopping the update programs - - 44"
- 2780 DATA " Stopping the display program - - 44"
- 2790 DATA " Stopping the pedigree program - 44"
- 2800 DATA " Stopping the family program - - 45"
- 2810 DATA " Stopping the descend program - - 45"
- 2820 DATA " Stopping the other programs - - 45"
- 2830 DATA ".sp"
- 2840 DATA "REFERENCE MATERIAL - - - - - - - - - 47"
- 2850 DATA " SAMPLE SCREENS AND PROMPTING"
- 2860 DATA " MESSAGES - - - - - - - - - - - 47"
- 2870 DATA " Menu Logo - - - - - - - - - - - 48"
- 2880 DATA " Menu of Programs - - - - - - - - 49"
- 2890 DATA " Display Logo - - - - - - - - - - 50"
- 2900 DATA " Personal Information - - - - - - 52"
- 2910 DATA " Pedigree Information - - - - - - 53"
- 2920 DATA " Family Group Information - - - - 54"
- 2930 DATA " Ordinance Information - - - - - 55"
- 2940 DATA " COMMANDS USED - - - - - - - - - - 57"
- 2950 DATA " Basic Command - - - - - - - - - 57"
- 2960 DATA " Load Command - - - - - - - - - - 57"
- 2970 DATA " Save Command - - - - - - - - - - 57"
- 2980 DATA " Run Command - - - - - - - - - - 58"
- 2990 DATA ".sp"
- 3000 DATA "APPENDIX A. MESSAGES - - - - - - - 59"
- 3010 DATA " Start-up Messages - - - - - - - - 59"
- 3020 DATA " Error Messages - - - - - - - - - - 60"
- 3030 DATA ".sp"
- 3040 DATA "APPENDIX B. SUMMARY - - - - - - - - 61"
- 3050 DATA " General Programs - - - - - - - - - 61"
- 3060 DATA " Documentation - - - - - - - - - - 62"
- 3070 DATA ".pa"
- 3080 DATA "APPENDIX C. HINTS - - - - - - - - - 63"
- 3090 DATA " Names - - - - - - - - - - - - - - 63"
- 3100 DATA " Dates - - - - - - - - - - - - - - 63"
- 3110 DATA " Commas - - - - - - - - - - - - - - 63"
- 3120 DATA " Replacing with Blanks - - - - - - 64"
- 3130 DATA " Removing a Record - - - - - - - - 64"
- 3140 DATA ".sp"
- 3150 DATA "APPENDIX D. MODIFICATIONS - - - - - 65"
- 3160 DATA " Changing the Number of Persons - - 65"
- 3170 DATA " Changing the Number of Marriages - 70"
- 3180 DATA " Repositioning the Data Files - - - 73"
- 3190 DATA " Persons File - - - - - - - - - - 73"
- 3200 DATA " Marriages File - - - - - - - - - 74"
- 3210 DATA " Ordinances File - - - - - - - - 75"
- 3220 DATA " Parent/Child Index - - - - - - - 76"
- 3230 DATA " Marriages Index - - - - - - - - 77"
- 3240 DATA " Removing the Ordinances File - - - 78"
- 3250 DATA " Changing the Ordinances File - - - 79"
- 3260 DATA " Repositioning the Programs - - - - 80"
- 3270 DATA " Utilizing Other Printers - - - - - 82"
- 3280 DATA ".sp"
- 3290 DATA "APPENDIX E. TERMS & CONDITIONS - - 87"
- 3300 DATA " Terms - - - - - - - - - - - - - - 87"
- 3310 DATA " Conditions - - - - - - - - - - - - 88"
- 3320 DATA " Disclaimer - - - - - - - - - - - - 88"
- 3330 DATA ".eof"
- 3340 END
-